66 research outputs found
Analyzing Consistency of Behavioral REST Web Service Interfaces
REST web services can offer complex operations that do more than just simply
creating, retrieving, updating and deleting information from a database. We
have proposed an approach to design the interfaces of behavioral REST web
services by defining a resource and a behavioral model using UML. In this paper
we discuss the consistency between the resource and behavioral models that
represent service states using state invariants. The state invariants are
defined as predicates over resources and describe what are the valid state
configurations of a behavioral model. If a state invariant is unsatisfiable
then there is no valid state configuration containing the state and there is no
service that can implement the service interface. We also show how we can use
reasoning tools to determine the consistency between these design models.Comment: In Proceedings WWV 2012, arXiv:1210.578
Requirement falsification for cyber-physical systems using generative models
We present the OGAN algorithm for automatic requirement falsification of
cyber-physical systems. System inputs and output are represented as piecewise
constant signals over time while requirements are expressed in signal temporal
logic. OGAN can find inputs that are counterexamples for the safety of a system
revealing design, software, or hardware defects before the system is taken into
operation. The OGAN algorithm works by training a generative machine learning
model to produce such counterexamples. It executes tests atomically and does
not require any previous model of the system under test. We evaluate OGAN using
the ARCH-COMP benchmark problems, and the experimental results show that
generative models are a viable method for requirement falsification. OGAN can
be applied to new systems with little effort, has few requirements for the
system under test, and exhibits state-of-the-art CPS falsification efficiency
and effectiveness.Comment: 38 pages, 5 figures, 10 table
Recommended from our members
A systematic mapping study of API usability evaluation methods
An Application Programming Interface (API) provides a programmatic interface to a software component that is often offered publicly and may be used by programmers who are not the API’s original designers. APIs play a key role in software reuse. By reusing high quality components and services, developers can increase their productivity and avoid costly defects. The usability of an API is a qualitative characteristic that evaluates how easy it is to use an API. Recent years have seen a considerable increase in research efforts aiming at evaluating the usability of APIs. An API usability evaluation can identify problem areas and provide recommendations for improving the API. In this systematic mapping study, we focus on 47 primary studies to identify the aim and the method of the API usability studies. We investigate which API usability factors are evaluated, at which phases of API development is the usability of API evaluated and what are the current limitations and open issues in API usability evaluation. We believe that the results of this literature review would be useful for both researchers and industry practitioners interested in investigating the usability of API and new API usability evaluation methods
A Query Language With the Star Operator
Model pattern matching is an important operation in model transformation and therefore in model-driven development tools. In this paper we present a pattern based approach that includes a star operator that can be used to represent recursive or hierarchical structures in models. We also present a matching algorithm, motivating examples and we discuss its implementation in a modeling tool
DiGraph: Users Guide
This document describes DiGraph version 0.9. When DiGraph starts it shows its version number. If the number shown is different from the version of this document, then this document is out of date. This document is divided in three main chapters. Chapter 2 explains the graph model on which DiGraph is based. Chapter 3 teaches how to use DiGraph on the user level. The last chapter explains how to customize DiGraph
DiGraph/Occam: Users Guide
This document describes how to use DiGraph/Occam. It assumes that the user has read the documentation for the basic editor: DiGraph: Users Guide. Refer to this document to learn how to use the basic graph editor. Section 3 explains the metaphor used to represent parallel progams as graphs. Also, it explains the hardware assumptions of the current implementation for the Hathi-2. Section 4 explains the use of DiGraph/Occam at user level
Falsification of Multiple Requirements for Cyber-Physical Systems Using Online Generative Adversarial Networks and Multi-Armed Bandits
We consider the problem of falsifying safety requirements of Cyber-Physical
Systems expressed in signal temporal logic (STL). This problem can be turned
into an optimization problem via STL robustness functions. In this paper, our
focus is in falsifying systems with multiple requirements. We propose to solve
such conjunctive requirements using online generative adversarial networks
(GANs) as test generators. Our main contribution is an algorithm which
falsifies a conjunctive requirement by
using a GAN for each requirement separately. Using ideas from
multi-armed bandit algorithms, our algorithm only trains a single GAN at every
step, which saves resources. Our experiments indicate that, in addition to
saving resources, this multi-armed bandit algorithm can falsify requirements
with fewer number of executions on the system under test when compared to (i)
an algorithm training a single GAN for the complete conjunctive requirement and
(ii) an algorithm always training GANs at each step.Comment: 8 pages, 5 figure
- …